class maxmin_byperiod:
    def __init__(self,timeperiod=5):
        self.his_data=[]
        self.timeperiod=timeperiod
        self.pretimekey=None
    def oncalc(self,d,timekey=None):
        if timekey:
            if timekey==self.pretimekey:
                self.his_data[-1]=d
            else:
                self.his_data.append(d)
        else:
            self.his_data.append(d)
        while len(self.his_data)>self.timeperiod:
            self.his_data.pop(0)
        if len(self.his_data)==self.timeperiod:
            min0=min(self.his_data)
            max0=max(self.his_data)
            if d==min0:
                return "min"
            elif d==max0:
                return "max"
            else:
                return None
        else:
            return None
